
package actions;

import dao.InexistantEntityException;
import gestion.GestionnaireRemote;

/**
 * Récupère les nouvelles valeurs saisies et met à jour le produit.
 * @author Alex
 */
public class ModifyProduit extends MiagetestAction {

    private String nom;

    private String prix;

    private Integer idProduit;

    private Integer idCategorie;

    public Integer getIdCategorie() {
        return idCategorie;
    }

    public void setIdCategorie(Integer idCategorie) {
        this.idCategorie = idCategorie;
    }

    public Integer getIdProduit() {
        return idProduit;
    }

    public void setIdProduit(Integer idProduit) {
        this.idProduit = idProduit;
    }

    public String getNom() {
        return nom;
    }

    public void setNom(String nom) {
        this.nom = nom;
    }

    public String getPrix() {
        return prix;
    }

    public void setPrix(String prix) {
        this.prix = prix;
    }

    @Override
    public String execute() {

        GestionnaireRemote gestionnaire = lookupGestionnaireRemote();

        try
        {
            Double prixDouble = Double.parseDouble(prix);

            gestionnaire.modifierProduit(idProduit, nom, prixDouble, idCategorie);
            
            setMessage("Le produit " + idProduit + " a été correctement modifié.");
        }
        catch(InexistantEntityException ex)
        {
            setMessage(ex.toString());
        }
        catch (NumberFormatException ex)
        {
            setMessage("Le prix doit être un décimal avec des points.");
        }

        return SUCCESS;
    }

}
